ses-ux
POST-TMF622 transferPrimaryDeviceEsimSub
Transfer Primary Device eSIM Subscription
This operation is used to transfer Primary Device eSIM Subscription
URL
http://{host:port}/{context}/esintegration/v1.0/esim/transferPrimaryDeviceEsimSubURL Param
| name | type | description | required |
|---|---|---|---|
| context | string | JM - Context carries the identifier for the specfic market if it is Jamaica | Y |
Header
| name | type | description | required |
|---|---|---|---|
| Authorization | string | Need to provide the basic Authorization with username and password | Y |
| X-Correlation-ID | string | Identifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction. | Y |
Request- LC
curl --location 'https://nonprod.lc.esb.cloud.lla.com/test/ses-ux-lc/JM/esintegration/v1.0/esim/transferPrimaryDeviceEsimSub' \
--header 'X-Correlation-ID: 50d77a59-e505-47f2-9d6d-8c8cc7883598' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
--data '{
"oldPrimaryDeviceInfo": {
"eid": "8986010110231170984S",
"deviceType": "iPhone",
"deviceVendor": "Apple",
"osType": "iOS",
"osVersion": "15.0",
"carrierBundleVersion": "21.0",
"subscriptionList": [
{
"primaryImsi": "338180101000153",
"primaryMsisdn": "8763326452",
"iccidProfile": {
"imei": "350636595897353",
"iccid": "89010181030100001537",
"simType": 0,
"uiccSignatureStatus": 0
}
}
]
},
"newPrimaryDeviceInfo": {
"eid": "8986010110231170985S",
"deviceType": "iPhone",
"deviceVendor": "Apple",
"osType": "iOS",
"osVersion": "15.0",
"carrierBundleVersion": "21.0",
"simAllianceProfileVersion": "2.0.0",
"gsmaSgp22Version": "2.0.0",
"iccidProfileList": [
{
"imei": "350636595897311",
"iccid": "89010181030100859389"
}
]
},
"planInfo": {
"operatorId": "operator A"
},
"transferFlowType": 1,
"applicationName": "App-X",
"subscriberInfo": {
"billingAccountNumber": "352307000000"
}
}'Response
[ 202 ]
success response
{}Definitions
Each of the request parameters is detailed.
| name | type | description | required |
|---|---|---|---|
| oldPrimaryDeviceInfo | object | The old primary-device object info contains the subscription information of the old primary device. | Y |
| oldPrimaryDeviceInfo.eid | string | The EID of the primary eSIM device. | N |
| oldPrimaryDeviceInfo.deviceType | string | The model of the device assigned by the device vendor. | N |
| oldPrimaryDeviceInfo.deviceVendor | string | The vendor of the eSIM device initiates the transfer operation. | N |
| oldPrimaryDeviceInfo.osType | string | The specific OS type of the eSIM device, For example: iOS, Android, Windows. | N |
| oldPrimaryDeviceInfo.osVersion | string | The specific OS version of the eSIM device. | N |
| oldPrimaryDeviceInfo.carrierBundleVersion | string | The specific bundle version of the carrier. | N |
| oldPrimaryDeviceInfo.subscriptionList | array | The array of the subscriptions which have been activated on the primary eSIM device. | Y |
| oldPrimaryDeviceInfo.subscriptionList.primaryImsi | string | The IMSI of the primary device’s subscription. When the device has only one subscription, it is always mandatory. When there are multiple subscriptions on it, the UE may not send SES the subscription of the primary IMSI not associated to the current IMSI. | N |
| oldPrimaryDeviceInfo.subscriptionList.primaryMsisdn | string | The MSISDN of the primary device’s subscription linked to the primary MSISDN. | N |
| oldPrimaryDeviceInfo.subscriptionList.iccidProfile. | object | An array of e-UICC profiles on the new primary eSIM device to be activated. For the e-UICC profile | Y |
| oldPrimaryDeviceInfo.subscriptionList.iccidProfile.imei | string | The IMEI of the e-UICC. | N |
| oldPrimaryDeviceInfo.subscriptionList.iccidProfile,iccid | string | The ICCID of the e-UICC. | N |
| oldPrimaryDeviceInfo.subscriptionList.iccidProfile.simType | integer | The SIM type of the old UICC profile, possible values: 0: Unknown 1: Physical SIM 2: eSIM 3: Virtual SIM | N |
| oldPrimaryDeviceInfo.subscriptionList.iccidProfile.uiccSignatureStatus | integer | The status of the UICC signature validation. The purpose of this validation is to prove that the SIM card to be transferred is bound to the old primary device. Possible values: 0: Validation passes 1: Validation fails 2: UE doesn’t support validation | N |
| newPrimaryDeviceInfo | object | The new primary-device object info contains the subscription information of the new primary device. The new primary device info can be an empty object if the transfer is triggered from the old device without any new device info. | Y |
| newPrimaryDeviceInfo.eid | string | The EID of the primary eSIM device. | N |
| newPrimaryDeviceInfo.deviceType | string | The model of the device assigned by the device vendor. | N |
| newPrimaryDeviceInfo.deviceVendor | string | The vendor of the eSIM device initiates the transfer operation. | N |
| newPrimaryDeviceInfo.osType | string | The specific OS type of the eSIM device, For example: iOS, Android, Windows. | N |
| newPrimaryDeviceInfo.osVersion | string | The specific OS version of the eSIM device. | N |
| newPrimaryDeviceInfo.carrierBundleVersion | string | The specific bundle version of the carrier. | N |
| newPrimaryDeviceInfo.simAllianceProfileVersion | string | A string representing the highest SIM Alliance profile version supported by the e-UICC. It is defined by the e-UICC capabilities. The minimum version supported is 2.0.0. For example, value 2.1.0 means that eUICC supports both 2.1.0 and 2.0.0 | N |
| newPrimaryDeviceInfo.gsmaSgp22Version | string | A string representing the GSMA SGP.22 specification version supported by the e-UICC. | N |
| newPrimaryDeviceInfo.iccidProfileList | array | An array of e-UICC profiles on the new primary eSIM device to be activated. | N |
| newPrimaryDeviceInfo.iccidProfileList.imei | string | The IMEI of the e-UICC. | N |
| newPrimaryDeviceInfo.iccidProfileList.iccid | string | The ICCID of the e-UICC. | N |
| planInfo | object | The information of the plan to be transferred. | |
| planInfo.operatorId | string | The specific operator identity that the plan belongs to. | N |
| transferFlowType | integer | When the transfer happens, possible values are: 1: During the new eSIM device boot up, the first-time end user set up the device. 2: After the eSIM device boot up. | N |
| subscriberInfo | object | The basic information of the subscriber who triggers the operation | N |
| subscriberInfo.billingAccountNumber | string | The account number to pay for the subscription. | N |
Response
[ 202 ]
success response
{}Possible response error
In this section all the possible data structures received by the client are defined and that must be considered as unsatisfactory when responding to the method.
[ 400 ]
Bad Request - the request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.
{
"error": "Invalid_Request",
"error_description": "The request is invalid, <Specific invalid parameter>."
}[ 404 ]
Not Found - server has not found a resource with that URI. This may be temporary and permanent condition. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.
{
"error": "Primary_Phonenumber_Not_Found",
"error_description": "The primary PhoneNumber not find in the backend system"
}Error for postpaid
{
"error": "Accout_Not_Found",
"error_description": "Account not find in the backend system"
}[ 500 ]
Internal Server Error - server encountered an error processing request. This should not happen normally, but it is a generic error message, given when no more specific message is suitable.
{
"error": "Internal Server Error",
"error_description": "Error when check the eSIM eligibility, <Specific error description>."
}